Enforcer - Efficient Failure Injection

نویسندگان

  • Cyrille Artho
  • Armin Biere
  • Shinichi Honiden
چکیده

Non-determinism of the thread schedule is a well-known problem in concurrent programming. However, other sources of non-determinism exist which cannot be controlled by an application, such as network availability. Testing a program with its communication resources being unavailable is difficult, as it requires a change on the host system, which has to be coordinated with the test suite. Essentially, each interaction of the application with the environment can result in a failure. Only some of these failures can be tested. Our work identifies such potential failures and develops a strategy for testing all relevant outcomes of such actions. Our tool, Enforcer, combines the structure of unit tests, coverage information, and fault injection. By taking advantage of a unit test infrastructure, performance can be improved by orders of magnitude compared to previous approaches. Our tool has been tested on several real-world programs, where it found faults without requiring extra test code.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Testing I/O Failures with Enforcer

Testing application behavior in the presence of I/O failures is extremely difficult. The resources used for testing usually work without failure. Failures typically cannot be initiated on the test suite level and are usually not tested sufficiently. Essentially, each interaction of the application with the environment can result in a failure, making failures hard to test. The Enforcer tool iden...

متن کامل

Exhaustive Testing of Exception Handlers with Enforcer

Testing application behavior in the presence of I/O failures is extremely difficult. The resources used for testing usually work without failure. Failures typically cannot be initiated on the test suite level and are usually not tested sufficiently. Essentially, each interaction of the application with the environment can result in a failure. The Enforcer tool identifies such potential failures...

متن کامل

Testing Exceptions with Enforcer

Java library calls, for instance for network I/O, may result in exceptions. Exhaustive testing of exceptions is very difficult. Enforcer automatically tests all relevant outcomes of actions that may cause an exception, and combines the structure of unit tests with coverage information and fault injection. Enforcer supports Java 1.5–1.6 and JUnit 3.8.1.

متن کامل

Berlin-Poznań Seminar on Discrete Mathematics

Małgosia Bednarska-Bzdȩga Degree and Small-graph Avoider-Enforcer games I will talk on two versions of biased Avoider and Enforcer games played on a hypergraph H = (V,E). In the strict Avoider-Enforcer (a : f) game two players, Avoider and Enforcer, claim in turns previously unselected elements of V , until all vertices are occupied. In each turn Avoider selects exactly a elements, and Enforcer...

متن کامل

Avoider-Enforcer: The rules of the game

An Avoider-Enforcer game is played by two players, called Avoider and Enforcer, on a hypergraph F ⊆ 2 . The players claim previously unoccupied elements of the board X in turns. Enforcer wins if Avoider claims all vertices of some element of F , otherwise Avoider wins. In a more general version of the game a bias b is introduced to level up the players’ chances of winning; Avoider claims one el...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2006